home *** CD-ROM | disk | FTP | other *** search
/ 100 Plus Great Games 2 / 100PLUSV2.BIN / games / WeaponEarth.dxr / 00005_UFO GameMovie.ls < prev    next >
Encoding:
Text File  |  2002-01-25  |  5.9 KB  |  214 lines

  1. global gMyAngle, gMissileDirection, h, v, gMissileSpeed, gLocH, gLocV, gMissileActive, gBaseRotation, gTempRot, gExplosionTime, gkount, gEPuppet, gTimely, gEDropTime, gLevel, gSelectUFO, gPoints, gBigBang, gEnemyDodge, gEnemySiden, gPause
  2.  
  3. on prepareMovie
  4.   gMissileSpeed = 3
  5.   gMissileDirection = 0.0
  6.   gLocH = 290
  7.   gLocV = 320
  8.   gMissileActive = 0
  9.   gBaseRotation = 0
  10.   gExplosionTime = 0
  11.   sprite(18).loc = point(-20, -20)
  12.   sprite(18).visible = 1
  13.   sprite(15).loc = point(-20, -20)
  14.   gkount = 0
  15.   gEPuppet = 30
  16.   gTimely = 1
  17.   gEDropTime = random(90) + 60
  18.   gSelectUFO = 1
  19.   gLevel = 1
  20.   member("LevelText").text = string(gLevel)
  21.   gPoints = 0
  22.   member("ScoreText").text = string(gPoints)
  23.   gEnemyDodge = 0
  24.   gEnemySiden = random(20) + 10
  25.   gPause = 0
  26.   sprite(19).visible = 0
  27.   sprite(20).visible = 0
  28.   gBigBang = 0
  29.   sprite(17).visible = 0
  30.   sprite(4).visible = 0
  31.   cursor(200)
  32.   member("missle").regPoint = point(5, 10)
  33.   init_ParticleConstants()
  34.   init_Particles()
  35. end
  36.  
  37. on missileFly me
  38.   gMyAngle = gMissileDirection * PI / 180.0
  39.   h = sin(gMyAngle) * gMissileSpeed
  40.   v = -cos(gMyAngle) * gMissileSpeed
  41.   gLocH = gLocH + h
  42.   gLocV = gLocV + v
  43.   sprite(15).loc = point(gLocH, gLocV)
  44. end
  45.  
  46. on missileFlyBackH
  47.   gMyAngle = gMissileDirection * PI / 180.0
  48.   h = sin(gMyAngle) * gMissileSpeed
  49.   v = -cos(gMyAngle) * gMissileSpeed
  50.   gLocH = gLocH - h
  51.   gLocV = gLocV + v
  52.   sprite(15).loc = point(gLocH, gLocV)
  53. end
  54.  
  55. on moonCollision
  56.   sprite(6).rotation = sprite(6).rotation + 1
  57.   if sprite(6).intersects(15) then
  58.     gMissileActive = 0
  59.     gExplosionTime = 1
  60.     sprite(18).locH = sprite(15).locH
  61.     sprite(18).locV = sprite(15).locV
  62.     sprite(18).visible = 1
  63.     sprite(18).member = "SmallExplodeframe 01"
  64.     sprite(15).locH = sprite(10).locH
  65.     sprite(15).locV = sprite(10).locV
  66.     gLocH = sprite(10).locH
  67.     gLocV = sprite(10).locV
  68.     gMissileSpeed = 55
  69.   else
  70.     if gExplosionTime >= 1 then
  71.       gExplosionTime = gExplosionTime + 1
  72.       if gExplosionTime < 10 then
  73.         sprite(18).member = "SmallExplodeframe 0" & gExplosionTime
  74.       else
  75.         sprite(18).member = "SmallExplodeframe " & gExplosionTime
  76.       end if
  77.       if gExplosionTime >= 22 then
  78.         sprite(18).visible = 0
  79.         gExplosionTime = 1
  80.       end if
  81.     end if
  82.   end if
  83. end
  84.  
  85. on enemyMovement
  86.   gTimely = gTimely + 1
  87.   if gTimely > gEDropTime then
  88.     if gLevel = 1 then
  89.       gEDropTime = random(90) + 60
  90.     else
  91.       if gLevel = 2 then
  92.         gEDropTime = random(80) + 40
  93.       else
  94.         if gLevel = 3 then
  95.           gEDropTime = random(70) + 20
  96.         else
  97.           if gLevel = 4 then
  98.             gEDropTime = random(60) + 10
  99.           else
  100.             if gLevel = 5 then
  101.               gEDropTime = random(50) + 5
  102.             end if
  103.           end if
  104.         end if
  105.       end if
  106.     end if
  107.     sprite(gEPuppet).puppet = 1
  108.     gSelectUFO = random(7)
  109.     if (gSelectUFO >= 1) and (gSelectUFO <= 4) then
  110.       sprite(gEPuppet).member = "droneship1"
  111.     else
  112.       if (gSelectUFO >= 5) and (gSelectUFO <= 6) then
  113.         sprite(gEPuppet).member = "mothership1"
  114.       else
  115.         sprite(gEPuppet).member = "boss-ship2"
  116.       end if
  117.     end if
  118.     sprite(gEPuppet).loc = point(random(280) + 150, -10)
  119.     sprite(gEPuppet).backColor = 0
  120.     sprite(gEPuppet).ink = 6
  121.     gEPuppet = gEPuppet + 1
  122.     gTimely = 1
  123.   end if
  124.   repeat with gkount = 30 to gEPuppet
  125.     if sprite(gkount).puppet = 1 then
  126.       sprite(gkount).locV = sprite(gkount).locV + 2
  127.       if sprite(gkount).locV <= 250 then
  128.         gEnemyDodge = gEnemyDodge + 1
  129.         if gEnemyDodge <= gEnemySiden then
  130.           sprite(gkount).locH = sprite(gkount).locH - 1
  131.         else
  132.           if gEnemyDodge <= (gEnemySiden + 25) then
  133.             sprite(gkount).locH = sprite(gkount).locH + 1
  134.           else
  135.             gEnemyDodge = 0
  136.             gEnemySiden = random(20) + 10
  137.           end if
  138.         end if
  139.       else
  140.         if sprite(gkount).locH < 260 then
  141.           sprite(gkount).locH = sprite(gkount).locH + 2
  142.         else
  143.           if sprite(gkount).locH > 320 then
  144.             sprite(gkount).locH = sprite(gkount).locH - 2
  145.           else
  146.             gEnemyDodge = gEnemyDodge + 1
  147.             if gEnemyDodge <= gEnemySiden then
  148.               sprite(gkount).locH = sprite(gkount).locH - 1
  149.             else
  150.               if gEnemyDodge <= (gEnemySiden + 25) then
  151.                 sprite(gkount).locH = sprite(gkount).locH + 1
  152.               else
  153.                 gEnemyDodge = 0
  154.                 gEnemySiden = random(20) + 10
  155.               end if
  156.             end if
  157.           end if
  158.         end if
  159.       end if
  160.     end if
  161.     if sprite(gkount).locH > 360 then
  162.       if sprite(gkount).intersects(1) then
  163.         sprite(gkount).locH = sprite(gkount).locH - 5
  164.       end if
  165.       next repeat
  166.     end if
  167.     if sprite(gkount).locH < 220 then
  168.       if sprite(gkount).intersects(1) then
  169.         sprite(gkount).locH = sprite(gkount).locH + 5
  170.       end if
  171.     end if
  172.   end repeat
  173. end
  174.  
  175. on EnemyCollision
  176.   repeat with gkount = 30 to gEPuppet
  177.     if sprite(gkount).intersects(2) then
  178.       if gPause = 0 then
  179.         gBigBang = 1
  180.         sprite(17).visible = 1
  181.         puppetSound(3, "large blast")
  182.       end if
  183.       gPause = 1
  184.     end if
  185.   end repeat
  186.   if gBigBang >= 1 then
  187.     sprite(17).member = "BigExplode" & gBigBang
  188.     gBigBang = gBigBang + 1
  189.   end if
  190.   if gBigBang >= 22 then
  191.     repeat with gkount = 30 to gEPuppet
  192.       sprite(gkount).puppet = 0
  193.     end repeat
  194.     repeat with gkount = 300 to 325
  195.       sprite(gkount).visible = 0
  196.     end repeat
  197.     sprite(21).visible = 1
  198.     sprite(22).visible = 1
  199.     sprite(23).visible = 1
  200.     sprite(24).visible = 1
  201.     sprite(25).visible = 1
  202.     sprite(26).visible = 1
  203.     member("levelScoreText01").text = "Final Score:" && string(gPoints)
  204.     member("levelScoreText02").text = "Final Score:" && string(gPoints)
  205.     puppetSound(5, "gameoverSound")
  206.     sprite(19).visible = 1
  207.     sprite(20).visible = 1
  208.     sprite(4).visible = 1
  209.     sprite(17).visible = 0
  210.     cursor(-1)
  211.     go(50)
  212.   end if
  213. end
  214.